import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'

import '@/http/axios.js'
import mockData from '@/mock/mock.js';
import mockData2 from '@/mock/mock2.js';

/**
 * 阻止启动生产消息
 * @type {boolean}
 */
Vue.config.productionTip = false;

/**
 * 每个 Vue.js 应用都是通过构造函数 Vue 创建一个 Vue 的根实例来启动的：
 */
new Vue({
  /**
   * 将页面路由组件注册到Vue中，并初始化
   * 这样Vue会将 router “注入”到每一个子组件中，每个组件都可以通过 this.$router 来访问全局单例对象 router。
   */
  router,
  /**
   * 将状态管理组件注册到Vue中，并初始化
   * 这样Vue会将 store “注入”到每一个子组件中，每个组件都可以通过 this.$store 来访问全局单例对象 store。
   */
  store,
  /**
   *  createElement(也就是h)是vuejs里的一个函数。这个函数的作用就是生成一个 VNode节点，
   *  render 函数得到这个 VNode 节点之后，返回给 Vue.js 的 mount 函数，渲染成真实 DOM 节点，并挂载到根节点上。
   * @param h
   * @returns {*}
   */
  render: h => h(App)
}).$mount('#app')
